package org.nlp2rdf.navigator.refactored;

import org.nlp2rdf.navigator.client.common.ClassificationCountResultDTO;
import org.nlp2rdf.navigator.client.common.ClassificationResultDTO;
import org.nlp2rdf.navigator.client.exception.NKEConceptParseException;
import org.nlp2rdf.navigator.client.exception.NKEQueryException;
import org.nlp2rdf.navigator.component.IComponent;

public interface IClassifier  {

	/**
	 * limit and offset are directly forwarded to SPARQLdescriptionconverter ,
	 * whereas parameter<0 means no limit and no offset
	 * 
	 * @param conceptInKBSyntax
	 * @param limit
	 * @param offset
	 * @return
	 * @throws NKEConceptParseException
	 * @throws NKEQueryException
	 */
	public ClassificationResultDTO classify(String conceptInKBSyntax, int limit, int offset)
			throws NKEConceptParseException,  NKEQueryException;

	public ClassificationCountResultDTO classifyCount(String conceptInKBSyntax)
			throws NKEConceptParseException, NKEQueryException;

}
